#ifndef PM_TAG_SUMMARY_H_INCLUDED
#define PM_TAG_SUMMARY_H_INCLUDED

#include "pm/dbobject.h"
#include "pm/criteria.h"

namespace pm
{

/**
 * \class TagSummary
 */
class TagSummary
{
	db::ID   m_idTag;
	wxString m_tagName;
	double   m_cost;
	db::ID   m_idProject;
	
public:
	TagSummary(wxSQLite3ResultSet& res);
	
	db::ID id_tag() const { return m_idTag; }
	const wxString& tag_name() const { return m_tagName; }
	double cost() const { return m_cost; }
	db::ID id_project() const { return m_idProject; }
};

/**
 * \class GetTagSummary
 */
struct GetTagSummary : public ICriteriaForEach<TagSummary>
{
	db::ID         m_idProject;
	
	GetTagSummary(db::ID idProject);
	
	virtual wxSQLite3Statement prepare(wxSQLite3Database& db);
};


} // namespace pm

#endif // PM_TAG_SUMMARY_H_INCLUDED
